Computer systems typically comprise a combination of computer programs and hardware, such as semiconductors, transistors, chips, circuit boards, storage devices, and processors. The computer programs are stored in the storage devices and are executed by the processors.
An important component of making computers easier to use was the development of sophisticated user interfaces, such as the Graphical User Interface (GUI). A GUI uses visual representations of common items to allow a user to operate a computer system. In most GUI-based computer systems, various icons, symbols, menus, or other visual indicators are manipulated or activated by a computer user via a pointing device (e.g., a mouse, a trackball, or track pad), which allows the user to give instructions to the computer. The computer typically translates the movement of the pointing device into movement of an animated arrow or pointer, sometimes called the mouse pointer, displayed on the computer screen. By moving the pointing device, the user may position the mouse pointer at various locations on the computer screen. Then, by activating a button on the pointing device, the user may invoke various commands and select various options.
Thus, in a GUI-based system, the user operates a pointing device and associated selection buttons instead of, or in addition to, a text or keyboard-based interface, in order to enter data and commands. Further, the computer system displays a variety of shapes, such as icons, pull-down menus, scroll bars, button bars, windows, and other visual indicators instead of, or in addition to, text, in order to represent the information, commands, and options available to the user.